Skip to content

feat: enable logging by default in v10 - #8717

Merged
itaybre merged 3 commits into
mainfrom
itaybrenner/cocoa-1421-enable-logging-by-default-cocoa
Aug 7, 2026
Merged

feat: enable logging by default in v10#8717
itaybre merged 3 commits into
mainfrom
itaybrenner/cocoa-1421-enable-logging-by-default-cocoa

Conversation

@itaybre

@itaybre itaybre commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Description

Enable enableLogs by default when building with the SDK_V10 compiler flag. This follows the logging spec v2.0.0 which requires enableLogs to default to true. No logs are emitted unless the user explicitly calls SentrySDK.logger or enables a logging integration, so this is safe to flip.

Changes

  • Options.swift: Flip enableLogs default from false to true under #if SDK_V10
  • SentryOptionsTest.m: Update testBooleanField call to expect YES under SDK_V10
  • CHANGELOG_V10.md: Add breaking change entry

How tested

  • make build-ios FOR_AGENTS=true — builds clean
  • make test-ios FOR_AGENTS=true ONLY_TESTING=SentryTests/SentryOptionsTest — 134 tests, 0 failures

Closes COCOA-1421

#skip-changelog

The logging spec v2.0.0 requires enableLogs to default to
true. No logs are emitted unless the user explicitly calls
SentrySDK.logger or enables a logging integration.
@linear-code

linear-code Bot commented Aug 6, 2026

Copy link
Copy Markdown

COCOA-1421

@itaybre itaybre added the run-full-ci Allows gated GitHub Action workflows to run for a labelled pull request label Aug 6, 2026
@itaybre
itaybre marked this pull request as ready for review August 7, 2026 03:12
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor
Messages
📖 Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 6f8bc0c

@sentry

sentry Bot commented Aug 7, 2026

Copy link
Copy Markdown

📲 Install Builds

iOS

🔗 App Name App ID Version Configuration
SDK-Size io.sentry.sample.SDK-Size 9.25.0 (1) Release

⚙️ sentry-cocoa Build Distribution Settings

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Performance metrics 🚀

  Plain With Sentry Diff
Startup time 1229.36 ms 1263.60 ms 34.24 ms
Size 24.14 KiB 1.27 MiB 1.25 MiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
10a3a91 1217.42 ms 1253.64 ms 36.23 ms
3561152 1205.59 ms 1246.11 ms 40.52 ms
cd4994f 1220.89 ms 1252.61 ms 31.72 ms
7815f8f 1229.18 ms 1263.70 ms 34.52 ms
b404da1 1231.65 ms 1263.33 ms 31.68 ms
3ae2884 1224.79 ms 1257.32 ms 32.53 ms
2fe9650 1228.33 ms 1260.78 ms 32.46 ms
13cc136 1224.55 ms 1252.60 ms 28.05 ms
dde298d 1212.13 ms 1247.89 ms 35.76 ms
11b0eef 1223.81 ms 1248.48 ms 24.67 ms

App size

Revision Plain With Sentry Diff
10a3a91 24.14 KiB 1.27 MiB 1.24 MiB
3561152 24.14 KiB 1.27 MiB 1.24 MiB
cd4994f 24.14 KiB 1.17 MiB 1.14 MiB
7815f8f 24.14 KiB 1.26 MiB 1.23 MiB
b404da1 24.14 KiB 1.23 MiB 1.21 MiB
3ae2884 24.14 KiB 1.24 MiB 1.21 MiB
2fe9650 24.14 KiB 1.17 MiB 1.15 MiB
13cc136 24.14 KiB 1.23 MiB 1.20 MiB
dde298d 24.14 KiB 1.22 MiB 1.20 MiB
11b0eef 24.14 KiB 1.18 MiB 1.15 MiB

@philprime philprime left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@itaybre
itaybre merged commit 450bcc1 into main Aug 7, 2026
251 of 254 checks passed
@itaybre
itaybre deleted the itaybrenner/cocoa-1421-enable-logging-by-default-cocoa branch August 7, 2026 17:27
itaybre added a commit that referenced this pull request Aug 7, 2026
* feat: enable logging by default in v10

The logging spec v2.0.0 requires enableLogs to default to
true. No logs are emitted unless the user explicitly calls
SentrySDK.logger or enables a logging integration.

* chore: update changelog PR reference
itaybre added a commit that referenced this pull request Aug 7, 2026
* feat: enable swiftAsyncStacktraces by default in v10

The feature was marked stable in v9.22.0. Enabling by default
gives users stitched async stack traces out of the box. This
impacts grouping, so it's gated to the major version.

* chore: update changelog PR reference

* fix: update LoadValidator error message (#8710)

* perf(session-replay): Prefer in-memory frames for live encode (#8636)

* perf(session-replay): Prefer in-memory frames for live encode

Keep scaled UIImages for live video encode while still writing PNGs to
disk for crash durability. Encode falls back to disk only for frames
recovered after a crash, avoiding PNG readback on the streaming path.

Co-Authored-By: Roman Zavarnitsyn <roman.zavarnitsyn@sentry.io>

* meta: Link changelog entry to #8636
Co-Authored-By: Roman Zavarnitsyn <roman.zavarnitsyn@sentry.io>

* ref(session-replay): Keep frame image loading off the data struct

Move disk fallback out of SentryReplayFrame into image(for:) so the
frame type stays a pure value without file I/O.

* ref(session-replay): Load frame images through file manager

Co-Authored-By: Phil Niedertscheider <phil.niedertscheider@sentry.io>

* ci: Retrigger flaky full CI jobs

Re-run after unrelated visionOS timeout, UI runner flake, and
cancelled tvOS unit job on the previous head.

Co-Authored-By: Roman Zavarnitsyn <roman.zavarnitsyn@sentry.io>
Co-Authored-By: Itay Brenner <itay.brenner@sentry.io>
Co-Authored-By: Phil Niedertscheider <phil.niedertscheider@sentry.io>

* Update CHANGELOG with new features and improvements

Added experimental option for UIViewController swizzling and improved Session Replay memory management.

* ref(session-replay): Inline image(atPath:) static method

Remove the thin static wrapper and use UIImage(contentsOfFile:)
directly at call sites. Keep the original variable name in
SentryVideoFrameProcessor to minimize diff.

* ref(session-replay): Keep original variable name in OnDemandReplay

---------

Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com>
Co-authored-by: Roman Zavarnitsyn <roman.zavarnitsyn@sentry.io>
Co-authored-by: Phil Niedertscheider <phil.niedertscheider@sentry.io>
Co-authored-by: Itay Brenner <itay.brenner@sentry.io>
Co-authored-by: Roman Zavarnitsyn <rom4ek93@gmail.com>

* test: warn on clearTestState() usage via SwiftLint (#8706)

* test: warn on clearTestState() usage via SwiftLint

Add a warning-level custom rule flagging clearTestState() call
sites so new usages get a second look. Existing call sites are
suppressed with a note to reconsider if touched.

* test: reword clearTestState() lint suppression note

* test: suppress avoid_clear_test_state in NetworkTrackerIntegrationTestServerTests

---------

Co-authored-by: NinjaLikesCheez <NinjaLikesCheez@users.noreply.github.com>

* fix: stamp sentry-cocoa version in 3rd-party archives (#8699)

* fix: stamp sentry-cocoa version in 3rd-party archives

The 3rd-party integration archives were built before Craft
bumped the version, so the tagged Package.swift contained
the previous release's sentry-cocoa dependency.

* test: assert version stamp in archive CI

* fix: improve tar command in create_tgz_from_staging function

Updated the tar command in the create_tgz_from_staging function to use tr for newline handling, ensuring compatibility with file names containing special characters. This change enhances the robustness of the archive creation process.

* feat: enable logging by default in v10 (#8717)

* feat: enable logging by default in v10

The logging spec v2.0.0 requires enableLogs to default to
true. No logs are emitted unless the user explicitly calls
SentrySDK.logger or enables a logging integration.

* chore: update changelog PR reference

* feat: enable swiftAsyncStacktraces by default in v10

The feature was marked stable in v9.22.0. Enabling by default
gives users stitched async stack traces out of the box. This
impacts grouping, so it's gated to the major version.

* chore: update changelog PR reference

* test: update default features for v10 async stacktraces

Include swiftAsyncStacktraces in testDefaultFeatures expected
list under SDK_V10, matching the new default.

* chore: remove duplicate changelog entry

* test: expect SwiftAsync integration in v10 tests

---------

Co-authored-by: NinjaLikesCheez <NinjaLikesCheez@users.noreply.github.com>
Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com>
Co-authored-by: Roman Zavarnitsyn <roman.zavarnitsyn@sentry.io>
Co-authored-by: Phil Niedertscheider <phil.niedertscheider@sentry.io>
Co-authored-by: Roman Zavarnitsyn <rom4ek93@gmail.com>
Co-authored-by: Philipp Süß <philipp.hofmann@sentry.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved run-full-ci Allows gated GitHub Action workflows to run for a labelled pull request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants